Le module numpy

Importation du module

In [1]:
import numpy as np

Les matrices avec le type matrix

À noter qu'on n'utilise ici le type matrix et non le type array.

In [2]:
# définition d'une matrice
A=np.mat("[1 0 3 ; 4 5 6 ; 7 8 9 ]")
print(A)
print(type(A))
[[1 0 3]
 [4 5 6]
 [7 8 9]]
<class 'numpy.matrix'>
In [3]:
# convertir une matrice en tableau
K=np.asarray(A)
print(K)
print(type(K))
[[1 0 3]
 [4 5 6]
 [7 8 9]]
<class 'numpy.ndarray'>
In [4]:
# accés aux coefficients
a=A[1,0]
print(a)
b=A[2,2]
print(b)
4
9
In [5]:
# matrice colonne
B=np.mat("[2 ; 0; 3]")
print(B)
[[2]
 [0]
 [3]]
In [6]:
# poduit d'un réel par une matrice
C=2*A
print(C)
[[ 2  0  6]
 [ 8 10 12]
 [14 16 18]]
In [7]:
# produit de matrice
D=A*B
print(D)
[[11]
 [26]
 [41]]
In [8]:
# inverse de la matrice
E=np.linalg.inv(A)
print(E)
[[ 0.25       -2.          1.25      ]
 [-0.5         1.         -0.5       ]
 [ 0.25        0.66666667 -0.41666667]]
In [9]:
# matrice identité
I=np.mat(np.eye(3,3))
print(I)
[[1. 0. 0.]
 [0. 1. 0.]
 [0. 0. 1.]]
In [10]:
K=A+I
print(K)
[[ 2.  0.  3.]
 [ 4.  6.  6.]
 [ 7.  8. 10.]]

Les matrices avec le type array

In [27]:
# à partir de tuples
a = np.array(((1.,2),(3,4)))
print(a) 
print(a.ndim)
print(a.shape)
print(a.dtype)
[[1. 2.]
 [3. 4.]]
2
(2, 2)
float64
In [28]:
# avec des "floats" :
b = np.array([
    [1., 2],
    [9, 3.]
    ])
print(b)
[[1. 2.]
 [9. 3.]]
In [29]:
c=a+b
print(c)
[[ 2.  4.]
 [12.  7.]]

Attention : le produit matricielle n'est pas avec le fois mais avec une fonction np.dot(a,b).

In [30]:
# produit matricielle
d=np.dot(a,b)
print(d)
[[19.  8.]
 [39. 18.]]
In [31]:
# inverse de la matrice
e=np.linalg.inv(d)
print(e)
[[ 0.6        -0.26666667]
 [-1.3         0.63333333]]
In [32]:
# transposée de la matrice
k=np.transpose(a)
print(k)
[[1. 3.]
 [2. 4.]]
In [34]:
g=np.power(a,3)
print(g)
[[ 1.  8.]
 [27. 64.]]

Les tableaux

In [13]:
# définition exhaustive
a=np.array([1,2,3,4,5,6])
print(a)
type(a)
[1 2 3 4 5 6]
Out[13]:
numpy.ndarray
In [14]:
# tableau régulier de 11 valeurs entre 1 et 2
b=np.linspace(1,2,11)
print(b)
[1.  1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 2. ]

Les statistiques

On utilise ici le type array.

In [15]:
s=np.array([1,5,6.2,8,10,0.6,24,6.2,6,3])
print(s)
print(sorted(s))
[ 1.   5.   6.2  8.  10.   0.6 24.   6.2  6.   3. ]
[0.6, 1.0, 3.0, 5.0, 6.0, 6.2, 6.2, 8.0, 10.0, 24.0]
In [16]:
n=len(s)
print(f"Effectif : {n}")
Effectif : 10
In [17]:
minimum =np.min(s)
print(f"Minimum : {minimum}")
Minimum : 0.6
In [18]:
maximum =np.max(s)
print(f"Maximum : {maximum}")
Maximum : 24.0
In [19]:
moyenne =np.mean(s)
print(f"Moyenne : {moyenne}")
Moyenne : 7.0
In [20]:
mediane =np.median(s)
print(f"Médiane : {mediane}")
Médiane : 6.1
In [21]:
ecart_type =np.std(s)
print(f"Écart_type : {ecart_type}")
Écart_type : 6.310625959443326
In [22]:
a = np.array([1.,2.,3.5,5.,6.,7.,7.4,7.8,8.2,8.4,8.5,9.,10.2,12.5])
print(a, a.ndim, a.shape, a.dtype)
print("médiane = ",np.median(a))
print("moyenne = ",np.mean(a))
print("variance = ",np.var(a))
print("Écart-type = ",np.std(a))
[ 1.   2.   3.5  5.   6.   7.   7.4  7.8  8.2  8.4  8.5  9.  10.2 12.5] 1 (14,) float64
médiane =  7.6
moyenne =  6.892857142857144
variance =  9.21637755102041
Écart-type =  3.0358487365184073
In [ ]: